// 使用后 无法修改增加

//用法1 将已存在的对象进行冻结
let a = {};
a.sex = '男';
console.log(a.sex, 111); //男 111
Object.freeze(a);
a.sex = '女';
console.log(a.sex, 222); //男 222 修改属性无效

//用法2 直接生成一个冻结的对象
let b = Object.freeze({
	name: "piter",
	age: 10
});
console.log(b.name, 333); //piter 333
b.name = "bob";
console.log(b.name, 444); //piter 444 修改属性无效


//除了将对象本身冻结，对象的属性也应该冻结。下面是一个将对象彻底冻结的函数。
var constantize = (obj) => {
	Object.freeze(obj);
	Object.keys(obj).forEach((key, i) => {
		if (typeof obj[key] === 'object') {
			constantize(obj[key]);
		}
	});
};



